package com.jdragon.tljrobot.client.utils;

import lombok.Data;
import lombok.extern.log4j.Log4j2;

import java.util.UUID;

@Data
@Log4j2
public class Local {
    private static TimingMap<String, Object> loginMap = new TimingMap();

    public static TimingMap<String, Object> getTokenMap() {
        return loginMap;
    }

    public static boolean isLogin(String userid) {
        return loginMap.containsKey(userid) && loginMap.get(userid) != null;
    }

    public static String login(Object object) {
        String userid = UUID.randomUUID().toString();
        log.debug(userid);
        loginMap.put(userid, object);
        return userid;
    }

    public static void logout(String userid) {
        loginMap.remove(userid);
    }

    public static void login(String token, Object object) {
        loginMap.put(token, object);
    }

    public static Object getSession(String userId) {
        return loginMap.get(userId);
    }

    public static int size() {
        return loginMap.size();
    }
}
